The present invention relates to the field of network traffic management, and more particularly to improving the quality of the service provided by wired and wireless networks by reducing traffic volume and improving network utilization.
Today, more and more users, systems and applications, search and browse through the Internet, accessing a variety of different web sites that offer access to, and the delivery of different media files. This searching and browsing process is generally referred to as “surfing” and the entities performing the surfing are generally referred to as “surfers”. A few non-limiting examples of files accessible through surfing include media files, such as ADOBE FLASH files, MICROSOFT SILVERLIGHT files, software files, documents, file sharing applications, etc. The files that are available for access and/or download can be embedded within web pages or they can be standalone files. A few examples of popular web sites that provide a wide variety of files for access, streaming, downloading, etc., include YOUTUBE, GOOGLE and YAHOO, Windows-Update, Internet stores such as “App Store” the electronic shop of Apple Inc. USA, and many other web sites are also available for gaining access to such files. Throughout the disclosure, downloading of a media file can be used as an example of downloading a large file. A large file can be a file that requires more than few minutes to download, such as 1-10 minutes for example. In some cases, in order to accelerate downloading of a large file, the downloading process can be executed over two or more connections.
Some video files use container-file-format for delivering video file over a Hyper Text Transfer Protocol (HTTP) based network. Usually a surfer can use a video player to observe a video file. An example of one such player is the FLASH PLAYER from Adobe Systems Incorporated. The player may be an application that can be invoked by the surfer's browser application, an embedded feature of a browser, a stand-alone application and even a stand-alone device. A few examples of such video Players that are commonly used include the ADOBE FLASH Player and the MICROSOFT SILVERLIGHT player, however, many other players are also available for use.
Within this description and the below-recited claims, the terms “ADOBE FLASH file”, “MICROSOFT SILVERLIGHT file”, “video file”, any other type of file and “media file” can be used interchangeably and the term “media file” can be used as a representative term for the different types of files.
For a variety of reasons, including the complexity of the technology and the level of clarity and resolution provided, a typical video file can be rather large in size. Consequently, downloading of a typical video file can consume a significant amount of bandwidth and require a considerable amount of time. Although when first introduced, such video files were typically only available for downloading to computers connected via hardwired connections to the Internet, technology has advanced to the point where such video files are available for download over wireless networks to mobile devices. For instance, mobile devices such as, but not limited to, notebook computers, cellular telephones or handsets, handheld computers, Personal Data Assistants (PDA), or other computing device with wireless communication capabilities are able to access, download and view high-definition video content. Although technology advancements have greatly improved the bandwidth available to mobile devices thereby improving the download speed of data, the download time for mobile devices is still somewhat bandwidth limited compared to hardwired access to the Internet and as such, mobile devices can experience considerable delays when downloading video files.
In many cases, the user may stop viewing and/or listening to the media file before the file has finished downloading. In such cases, the transmitting portion of the video not watched by the user would consume network resources without any actual benefit to the user.
In most wireless networks, the capacity is provisioned so as to provide a balance between adequate utilization in times when consumption is low, and providing adequate user experience in times when congestion is high. In such situations, it can be beneficial to lower the bandwidth available to users downloading non-media files in order to spread the download duration and reduce the peak consumption of bandwidth due to the data downloads.
An access network operator (ANO) is the typical entity or device within a network that operates to provide provision and manage the infrastructure that provides access to the Internet for subscribers. Examples of an ANO can be a telecom operator, such as but not limited to: a cellular operator, a satellite communication service provider, a Public Switched Telephone Network (PSTN) operator, Internet Service Provider (ISP) premises, etc. Thus, the main commodity that an ANO delivers is bandwidth, and as such, the ANOs seek and employ the use of different methods for handling the downloading of media files to improve the utilization of their bandwidth resources. Some of the methods employed include a buffer limiter, which limits the amount of data (i.e., the number of bytes) that can be downloaded by an entity until the entity observes previously downloaded data.
For non-media files, the buffer limiter can limit the rate of the transfer of a file to a constant rate (for example, to a constant rate 250 Kbits per second). The rate can be predetermined for all users or determined in accordance with a policy. Existing rate limiting solutions work by limiting the rate of packets sent so that the rate would be constant over the entire period.